//
//  BIPNode.h
//  RoutingEvaluator
//
//  Created by Christopher Kemsley on 4/15/12.
//  Copyright (c) 2012 iAppolopolis. All rights reserved.
//

#import <Cocoa/Cocoa.h>
#import "OCNodeInfo.h"
#import "OCLinkInfo.h"

@interface BIPNode : OCNodeInfo
@property (nonatomic,readonly,strong)	NSArray*		links ;		// sorted: least power to most power
@property (nonatomic,readonly,copy)		NSArray*		activeLinks ;
@property (nonatomic,readonly,copy)		NSArray*		inactiveLinks ;
@property (nonatomic,readonly,copy)		NSArray*		inactiveLinksToInactiveNodes ;
@property (nonatomic,readonly,assign)	Sim::Float64	minimumPowerIncrement ;


- (id)	initWithNodeInfo:(Sim::NodeInfo*)info allLinks:(NSSet*)allOCLinkInfos ;

- (void)	activateNextLinks ;

+ (NSSet*)	setWithNodes:(Sim::NodeInfoSet*)set allLinks:(NSSet*)allOCLinkInfos ;


@end
